[iOS] TestFlight の特徴 と DeployGate との違い
はじめに
iTunes Connect 標準機能として提供されているTestFlightと、充実した機能や分かりやすい管理画面UIを提供してくれているDeployGate。今回は、この2つを、iOS開発者の立場から比較してみました。
もし間違い等ありましたら、ぜひご指摘いただけると幸いです。
また、別の比較できる観点が見つかりましたら、更新するかもしれません。よろしくお願いいたします。
※初回投稿時、DeployGateがDeploygateとなっていました。へんてこさん、ありがとうございます!(2016/03/31)
簡単に各サービスの紹介
TestFlight
iTunes Connect の一機能として提供されているサービスの名称。特定のユーザーに、リリース前のアプリを配信し、利用状況の取得やフィードバックを受けることができる。
TestFlight Beta Testing - App Store - Apple Developer
DeployGate
TestFlight と異なり、iOS, Android どちらのアプリもテスト配信可能な、株式会社デプロイゲートが提供するサービスの名称。TestFlightと似ているが、多くの独自サービスを提供している。
DeployGate - 開発中のアプリの配布を、びっくりするぐらい簡単に
比較表
上記各サービスサイトのトップページに書かれている以外に、それぞれどんな特徴があるのかを、列挙してみました。
- | TestFlight内部テスト | TestFlight外部テスト | DeployGate |
---|---|---|---|
バイナリアップロード後すぐテスト配信できる | △ テスト配信に使用可能になるまで数十分ほどかかる | ☓ 審査が必要 | ◎ 即テスト配信出来る |
テストに使える端末数 | △ 250台 (25ユーザ ✕ 10台) | ◯ 2000台 | △ 1アプリ当たり100台など(プロビジョニングプロファイルに紐付けられる端末台数) |
開発者へのフィードバック | ◯ アプリ内から端末情報付きのフィードバックをメールで送れる | ◯ アプリ内から端末情報付きのフィードバックをメールで送れる | ◎ テスター用管理画面で開発者とやり取りできる |
Androidアプリを扱える | ☓ | ☓ | ◯ |
料金 | ◯ iOS Developer Programに含まれる | ◯ iOS Developer Programに含まれる | ◎ 無料(有料プランあり) |
クラッシュ検知 / インストール検知機能の組み込み | ◯ SDK必要なし | ◯ SDK必要なし | △ SDKが必要 |
バイナリの有効期限 | △ 60日 | △ 60日 | ◯ なし(証明書の有効期限まで) |
テスト用バイナリの登録方法 | ◯ XcodeからダイレクトにApp Store用にアップロード | ◯ XcodeからダイレクトにApp Store用にアップロード | △ OrganizerからIPAファイル書き出し、管理画面からアップロード |
テスター側のアプリ管理画面 | ◯ 専用アプリあり | ◯ 専用アプリあり | ◯ Webクリップで実質的にアプリ並に使いやすいアプリ管理画面を使える |
ユーザー追加 | ◯ 楽 | ◯ 楽 | △ プロビジョニングプロファイルの更新が必要 |
1. バイナリアップロード後すぐテストできるか
DeployGate ならすぐテスト出来る!
- DeployGateなら、IPAファイルをアップロード後、すぐにテスターに配信出来ます。
- TestFlight内部テストでは、バイナリアップロード後、そのバイナリをテストに利用できるようになるまでに数十分から時には1時間以上かかります。
-
TestFlight外部テストでは、審査を通過する必要があり、ウイークポイントとなっています。先日試した所、審査に1日程度かかりました。
2. テストに使える端末数
TestFlight外部テストは2000台
-
DeployGateの場合、IPAファイルを介す関係で、そのビルドのプロビジョニングプロファイルに紐付けられるUDIDの数に縛られてしまいます。つまり、iOS Developer Program であれば100台が上限となります。
-
TestFlight内部テストでは、アプリごとに25ユーザーまで、という縛りがあります。各ユーザーに対して10台紐付けられるので、250台までとなります。
-
TestFlight外部テストでは、2000台まで使えます。
3. 開発者へのフィードバック
TestFlight なら専用アプリ内から開発者へメッセージを送れる
- DeployGateの場合、テスター用管理画面で、チャットライクに開発者とやり取りができ大変便利です。
- TestFlightでは、専用アプリからメールで開発者にフィードバックを送ることが出来ます。その際、端末の情報(端末名やiOSバージョンなど)が添付されて送られるので、便利です。
4. Androidアプリを扱えるか
DeployGate ならOK!
- DeployGateは元々Android用でスタートしていますので、もちろんAndroidも扱えます。
-
TestFlightは、Appleに買い取られるまでは、Androidも扱えたのですが、現在は iOS のみとなっています。
5. 料金
DeployGate は基本無料! TestFlight も追加料金ナシ!
-
DeployGateは有料プランもありますが、無料でもテスター数に制限がないなど十分に使えます。
- (参考)プランと利用料金
- TestFlightは、Apple Developer Program に加入してれば、追加料金無しで使うことが出来ます。
6. クラッシュ検知 / インストール検知機能の組み込み
TestFlight なら SDK 必要なし
-
DeployGateは、アプリのクラッシュやインストールされたかの情報を知るには、SDKを組み込む必要があります。
- TestFlightは現在、SDKが存在しません。特に何もしなくても、自動的にクラッシュ・インストール情報などを取得してくれます。
7. バイナリの有効期限
DeployGate は証明書の有効期限までOK!
-
DeployGateでは、特にバイナリの有効期限というものがなく、アプリ証明書の有効期限が切れるまでは、引き続きテストに使うことが出来ます。
-
TestFlightでは、バイナリアップロードから60日という制限があります。
8. テスト用バイナリの登録方法
TestFlight なら Xcodeからダイレクトにアップロード!
-
DeployGateの場合、アプリをIPAファイルとして書き出してから、DeployGateにアップロードする必要があります。この辺は自動化の仕組みも作れそうですが、若干手間がかかります。
-
TestFlightでは、アプリのリリースの時と同様に iTunes Connect にアップロードするだけです。
9. テスター側のアプリ管理画面
TestFlight は専用アプリあり!
-
DeployGateは、SafariなどからWeb上の管理画面を使う形になります。ただ、テスターになる過程で、ホーム画面上にアプリアイコンが追加されます。実態はWebクリップなのですが、アプリのように扱えます。ちなみにAndroidの場合は専用アプリがあります。
-
TestFlightでは、テスター用アプリがあります。コレをインストールすればOKです。
10. ユーザー追加
TestFlight が手軽
- DeployGateは、その端末のUDIDが、DeployGate 側に登録されていない場合、配布用プロビジョニングプロファイルをEditし、その UDID を追加し、あらたにIPAファイルをエクスポート&アップロードする必要があります。
-
コメントにて、へんてこさんに、テスターのUDIDを簡単に追加する方法を教えて頂きました。ありがとうございます!(2016/03/31)
- TestFlightでは、DeployGateのように、プロビジョニングプロファイルに気を使う必要がないため、その分手軽になります。
まとめ
今回見てきた観点の中でも、DeployGate、TestFlight双方にメリット・デメリットがあることが分かりました。適所適材。その時に使いやすい物を使いましょう。